-
Notifications
You must be signed in to change notification settings - Fork 548
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[WIP] Adding ROOT_jll #9300
base: master
Are you sure you want to change the base?
[WIP] Adding ROOT_jll #9300
Conversation
Cling needs to ask the system compiler about the include paths to libstdc++. Do you have a c++ compiler installed? |
We have both a compiler for the host platform and a cross-compiler for the target one, which one should we use for this? |
I believe the one you compile with. It should be the same as the one you will have on the platform you deploy. |
@giordano what @vgvassilev is referring is to have the used compiler on the [user] system where you install the ROOT_jll package. This is not going to be easy, unless the compiler itself is a _jll package. If there was a way to set the include path to the libstdc++ then we would not need to have the compiler installed, isn't it? |
I suspect that if we are able to point cling to the right compiler, rootcling will just work. Note that ROOT has been developed for many years without cross-compilation in mind and even if it builds it is not necessarily to run. You can see all of the |
We do have Clang compilers packaged up in JLLs ( |
Hello, I had a look at the new version of the recipe. For reminder, the recipe was already working for The error about conflicting While building works, we have now a similar error when executing ROOT. The execution is done outside the Alpine container, and we have therefore only the glibc headers available. Note that I've solved the error about the compiler not found by creating a link with the expected name, and the In addition, I get the error For reminder, in absence of --sysroot option for rootcling, we use the environment variable CPLUS_INCLUDE_PATH to for the PATH list that the compiler returns, when executed by rootcling without this option. Nevertheless, it seems not enough. There is some reminiscence of the include path of the host rootcling or root was compiled. @vgvassilev do you have an idea, where it comes from. Philippe. |
This very likely means for some reason Cling cannot finds its runtime. There is |
The gCling symbol is in the |
I can confirm, that |
This is a new attempt to cross-compile ROOT in order to produce ROOT_jll. It starts from #7666
The current status is:
root
executable once deployed 😄. To reproduce:What I get is:
rootcling
because I think the generated code is not compilable by clang.The errors are of this form: